package org.example.Controller;

import com.alibaba.fastjson.JSONObject;
import org.example.entity.User;
import org.example.his.common.api.CommonResponse;
import org.example.his.common.utils.RequestToJsonObject;
import org.example.service.LoginService;
import org.example.utils.MD5;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;

@RestController
@RequestMapping("/common_page")
public class LoginController {

    @Autowired
    private LoginService loginService;

    /**
     * API1 医院人员登录接口，给用户名和密码，返回所有的属性（除了密码）
     * url格式：http://localhost:9080/common_page/user_login?Password=root&UserName=root&UseType=0
     * 备注：后端用了MD5加密，真实密码就是用户名加123，root密码就是root
     * 测试结果：正常
     */
    @PostMapping("/user_login")
    public CommonResponse<User> login(
            HttpServletRequest httpRequest
    ){
        JSONObject jsonObject = RequestToJsonObject.RequestToJsonObject(httpRequest);
        String UserName = (String) jsonObject.get("username");
        String Password = (String) jsonObject.get("password");
        String UseType = (String) jsonObject.get("type");
        return loginService.login(UserName,Password,UseType);
    }

    @GetMapping("/md5")
    public String MD5(
            @RequestParam("Password") String Password
    ){
        return MD5.encrypt(Password);
    }
}
